1
Vượt qua các thao tác điểm riêng lẻ: Hiểu về các mẫu giảm thiểu
AI023Lesson 8
00:00

Trong khi các thao tác điểm riêng lẻ xử lý mỗi phần tử trong một ten-sor một cách độc lập, các mẫu giảm thiểu thêm vào các phụ thuộc dữ liệu nơi nhiều phần tử đầu vào được hợp nhất thành một giá trị đầu ra duy nhất (ví dụ: tổng, cực đại hoặc trung bình). Để triển khai chúng hiệu quả, ta cần phải nối liền khoảng cách giữa cấu trúc 2D logic của dữ liệu và cách biểu diễn tuyến tính của nó trong bộ nhớ thiết bị.

1. Ánh xạ bộ nhớ 2D

Các ten-sor 2D là lưới về mặt logic nhưng lại tuyến tính về mặt vật lý trong RAM. Việc hiểu rõ theo hàng so với theo cột bố trí sẽ ảnh hưởng đến việc xác định xem một phép giảm thiểu có đi qua các địa chỉ bộ nhớ liên tiếp hay cần truy cập theo bước nhảy (strided access).

2. Kiến trúc điểm riêng lẻ so với kiến trúc giảm thiểu

Một phép sao chép ma trận đại diện cho một thao tác điểm riêng lẻ với ánh xạ đầu vào - đầu ra $1:1$. Ngược lại, một giảm thiểu là một thao tác nhiều-đối-một ($N:1$), đòi hỏi tích lũy chung giữa các luồng hoặc xử lý tuần tự bên trong một khối.

Điểm riêng lẻ (Sao chép ma trận)Giảm thiểu (Max theo hàng)

3. Suy giảm chiều

Các phép giảm thiểu được xác định bởi trục của thao tác. Giảm theo trục 1 (hàng) so với trục 0 (cột) sẽ thay đổi cơ bản các mô hình bước nhảy bộ nhớ và tỷ lệ va chạm bộ đệm phần cứng.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>